Solid state storage systems (such as NAND Flash storage) do not natively return soft values when read. When a read is performed on NAND Flash storage, a read threshold is specified. Cells in a page having a voltage lower than the read threshold are reported as having a first hard read value (e.g., a 1) and cells in the page having a voltage higher than the read threshold are reported as having a second hard read value (e.g., a 0). Although techniques exist to generate soft read data from two or more reads, generating soft read data from a single read is more attractive (e.g., because it consumes less power and fewer input/output (I/O) resources). Better quality soft read data would, for example, improve various system performance measurements, such as bit error rate or sector failure rate.